Many computer networks include a shared infrastructure of multiple computers for providing resources to end users via a single web-based interface. These computer networks typically include a distributed operating system application for controlling a server farm as a single logical unit. The server farm typically includes stateless front end servers, application servers, and a database backend for storing user-created content as well as settings and connections between the front end servers and the application servers. Distributed operating system computer networks also typically include additional network hardware devices or appliances such as domain name system servers, firewalls, load balancers, wide area network accelerators, and proxy servers which are utilized by the server farm to increase security, provide high availability, or help manage network downtime.
The aforementioned additional network hardware appliances, however, are decentralized with respect to the distributed operating system (i.e., they are external devices with no visibility as to their status or configuration from within the distributed operating system). Furthermore, each network hardware appliance (even those manufactured by the same vendor) may have unique settings which must be manually configured by network engineers. Moreover, failures occurring within any external hardware appliance which may degrade or even crash the distributed operating system are invisible to a system administrator (the administrator may detect a failure has occurred but has no way of identifying the specific external hardware appliance or appliances causing the failure or determining the reason for the failure). As a result, time and resources are often wasted while network engineers are dispatched to identify and correct problems occurring in the external appliances. It is with respect to these considerations and others that the various embodiments of the present invention have been made.